package com.zone.service.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.zone.common.core.annotation.Excel;
import com.zone.common.core.web.domain.BaseEntity;

/**
 * 枪弹出入流水对象 zone_gun_inout_record
 * 
 * @author ningbo
 * @date 2025-11-18
 */
public class GunInoutRecord extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private String id;

    /** 名称 */
    @Excel(name = "名称")
    private String categoryId;

    /** 内容 */
    @Excel(name = "内容")
    private String contentCode;

    /** 数量 */
    @Excel(name = "数量")
    private Long totalQuantity;

    /** 剩余数量 */
    @Excel(name = "剩余数量")
    private Long remainQuantity;

    /** 购入日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "购入日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date buyDate;

    /** 生产日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date productDate;

    /** 过期日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "过期日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date expireDate;

    /** 操作日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "操作日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date operateTime;

    /** 操作类型 */
    @Excel(name = "操作类型")
    private Long operateType;

    /** 是否用完 */
    @Excel(name = "是否用完")
    private Integer isFinished;

    /** 操作员id */
    private String operatorId;

    /** 操作员 */
    @Excel(name = "操作员")
    private String operatorName;

    /** 部门 */
    private String departmentId;

    /** 创建人 */
    @Excel(name = "创建人")
    private String createrUser;

    /** 修改人 */
    private String updateUser;

    /** $column.columnComment */
    private Integer deleted;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }

    public void setCategoryId(String categoryId) 
    {
        this.categoryId = categoryId;
    }

    public String getCategoryId() 
    {
        return categoryId;
    }

    public void setContentCode(String contentCode) 
    {
        this.contentCode = contentCode;
    }

    public String getContentCode() 
    {
        return contentCode;
    }

    public void setTotalQuantity(Long totalQuantity) 
    {
        this.totalQuantity = totalQuantity;
    }

    public Long getTotalQuantity() 
    {
        return totalQuantity;
    }

    public void setRemainQuantity(Long remainQuantity) 
    {
        this.remainQuantity = remainQuantity;
    }

    public Long getRemainQuantity() 
    {
        return remainQuantity;
    }

    public void setBuyDate(Date buyDate) 
    {
        this.buyDate = buyDate;
    }

    public Date getBuyDate() 
    {
        return buyDate;
    }

    public void setProductDate(Date productDate) 
    {
        this.productDate = productDate;
    }

    public Date getProductDate() 
    {
        return productDate;
    }

    public void setExpireDate(Date expireDate) 
    {
        this.expireDate = expireDate;
    }

    public Date getExpireDate() 
    {
        return expireDate;
    }

    public void setOperateTime(Date operateTime) 
    {
        this.operateTime = operateTime;
    }

    public Date getOperateTime() 
    {
        return operateTime;
    }

    public void setOperateType(Long operateType) 
    {
        this.operateType = operateType;
    }

    public Long getOperateType() 
    {
        return operateType;
    }

    public void setIsFinished(Integer isFinished) 
    {
        this.isFinished = isFinished;
    }

    public Integer getIsFinished() 
    {
        return isFinished;
    }

    public void setOperatorId(String operatorId) 
    {
        this.operatorId = operatorId;
    }

    public String getOperatorId() 
    {
        return operatorId;
    }

    public void setOperatorName(String operatorName) 
    {
        this.operatorName = operatorName;
    }

    public String getOperatorName() 
    {
        return operatorName;
    }

    public void setDepartmentId(String departmentId) 
    {
        this.departmentId = departmentId;
    }

    public String getDepartmentId() 
    {
        return departmentId;
    }

    public void setCreaterUser(String createrUser) 
    {
        this.createrUser = createrUser;
    }

    public String getCreaterUser() 
    {
        return createrUser;
    }

    public void setUpdateUser(String updateUser) 
    {
        this.updateUser = updateUser;
    }

    public String getUpdateUser() 
    {
        return updateUser;
    }

    public void setDeleted(Integer deleted) 
    {
        this.deleted = deleted;
    }

    public Integer getDeleted() 
    {
        return deleted;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("categoryId", getCategoryId())
            .append("contentCode", getContentCode())
            .append("totalQuantity", getTotalQuantity())
            .append("remainQuantity", getRemainQuantity())
            .append("buyDate", getBuyDate())
            .append("productDate", getProductDate())
            .append("expireDate", getExpireDate())
            .append("operateTime", getOperateTime())
            .append("operateType", getOperateType())
            .append("isFinished", getIsFinished())
            .append("operatorId", getOperatorId())
            .append("operatorName", getOperatorName())
            .append("departmentId", getDepartmentId())
            .append("createrUser", getCreaterUser())
            .append("createTime", getCreateTime())
            .append("updateUser", getUpdateUser())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("deleted", getDeleted())
            .toString();
    }
}
